import { getImageType } from '@e/methods/image';

/**
 * 从url提取文件名
 */
export function extractFilenameFromURL(url: string) {
	const matchs = url.match(/(.+)\/([^\/\\\:\*\?\"\<\>\|]+\.[a-zA-Z]+)(\?.*)?/);

	if (matchs) {
		return matchs[2];
	}
}

/**
 * 生成本地引用URL地址
 */
export function generateLocalReferenceURL(absolutePath: string) {
	return encodeURI('file://' + absolutePath.replace(/\\/g, '/'));
}

/**
 * buffer 转 base64URL
 */
export function bufferToBase64URL(buf: Buffer) {
	// 获取图片类型
	const res = getImageType(buf);

	if (res) {
		return `data:${res.mime};base64,${buf.toString('base64')}`;
	}
}
